100 REM **************************** 110 REM SAVE "@0:DOS COMMANDS.C64",8 120 REM **************************** 130 REM DICK SCHMELZER 140 REM P.O. BOX 9836 150 REM MADISON, WISCONSIN 53715 160 REM **************************** 170 POKE53281,1 180 CLR 190 PRINT"[147][144] READING DISK DIRECTORY" 200 DIMP$(100) 210 AH=0 220 REM 230 REM 240 OPEN1,8,0,"$" 250 REM 260 GET#1,B$:IFST<>0THEN340 270 IFB$<>CHR$(34)THEN260 280 P$="" 290 GET#1,B$:IFB$<>CHR$(34)THENP$=P$+B$:GOTO290 300 GET#1,B$:IFB$=CHR$(32)THEN300 310 P$(X)=P$:PRINT" ";X;"[145][145][145][145]" 320 GET#1,B$:IFB$<>""THEN320 330 IFST=0THENX=X+1:GOTO250 340 CLOSE1 350 REM DISPLAY MENU 360 N=10 370 PRINT"[147][144]64 DOS COMMANDER" 380 PRINT"FOR ";CHR$(34)+P$(0);CHR$(34) 390 PRINT"";TAB(22)"[151]DISK LOADER[157][157][157][157][157][157][157][157][157]SECTION[157][157][157][157][157][157][157][157][157][210][210][210][210][210][210][210][210][210][210][210]" 400 IFN<10THENN=10 410 IFN>100THENN=100 420 PRINT"":FORJ=(N-9)TON:PRINTJ;"- ";P$(J):NEXTJ 430 PRINT:PRINT"PRESS[157][157][157][157][157]N[144] FOR NEXT SCREEN" 440 PRINT"P[144] FOR PREVIOUS SCREEN" 450 PRINT"X[144] TO EXIT TO BASIC" 460 IFAH=1THEN830 470 IFAH=2THEN1040 480 PRINT"L[144] TO LOAD ONLY" 490 PRINT"R[144] TO LOAD AND RUN" 500 PRINT"D[144] FOR DISK FIXER" 510 PRINT"_[144] FOR PRINTER COMMANDS 520 Z$[178]"":[161]Z$:[139]Z$[178]""[167]520 530 [139]Z$[178]"N"[167]N[178]N[170]10:[137]370 540 [139]Z$[178]"P"[167]N[178]N[171]10:[137]370 550 [139]Z$[178]"X"[167][141]1550:[141]730:AH[178]0:[128] 560 [139]Z$[178]"L"[167][141]610:[137]710 570 [139]Z$[178]"R"[167][141]610:[137]680 580 [139]Z$[178]"D"[167]AH[178]1:[137]370 590 [139]Z$[178]"_"[167]AH[178]2:[137]370 600 [137]520 610 [143] SELECT AND PRINT LOAD 620 [153]"PROGRAM #"; 630 [133]S 640 [153]"LOAD":[153][163]12)"DOS COMMANDERWAIT" 650 [139]S[179]1[176]S[177]X[167]620 660 [153]"LOAD"[170][199](34)[170]P$(S)[170][199](34)[170]",8ONONON" 670 [142] 680 [143] LOAD AND RUN 690 [151]631,13:[151]632,82:[151]633,85:[151]634,78:[151]635,13:[151]198,5 700 [128] 710 [143] LOAD ONLY 720 [151]631,13:[151]198,1:[128] 730 [153]"":[129]X[178]10[164]30:[153][163]X)"STOP*";:[130] 740 [153]"":[129]Y[178]1[164]14:[153][163]10)"* ":[130] 750 [153]"":[129]X[178]10[164]30:[153][163]X)"*";:[130] 760 [153]"":[129]Y[178]1[164]14:[153][163]30)"*":[130] 770 [153]"";[163]12)" COMMANDER STILL" 780 [153][163]12)"PRESENT IN MEMORY" 790 [153][163]12)"STOPTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTAN" 800 [153][163]12)"TYPE:" 810 [153][163]12)"STOP'NEW' - TO ERASE":[153][163]23)"OR" 820 [153][163]12)"STOP'RUN' - TO REPEAT":[142] 830 [143] THIS AREA CONTAINS DISK COMMANDS 840 [153]"";[163]22)"STOPDISK FIXER CMDCMDCMDCMDCMDCMDCMDCMDCMDSECTION CMDCMDCMDCMDCMDCMDCMDCMDCMDCMD(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)" 850 [153]"1STOP TO FORMAT NEW DISK " 860 [153]"2STOP TO VALIDATE OR CONDENSE DISK " 870 [153]"3STOP TO RENAME A FILE ON DISK " 880 [153]"4STOP TO SCRATCH A FILE FROM DISK " 890 [153]"RSTOP RETURN TO LOAD SECTION" 900 Z$[178]"":[161]Z$:[139]Z$[178]""[167]900 910 [139]Z$[178]"N"[167]N[178]N[170]10:[137]370 920 [139]Z$[178]"P"[167]N[178]N[171]10:[137]370 930 [139]Z$[178]"X"[167][141]1550:[141]730:AH[178]0:[128] 940 [139]Z$[178]"1"[167]1580 950 [139]Z$[178]"2"[167][137]1800 960 [139]Z$[178]"3"[167][141]1000:[137]1960 970 [139]Z$[178]"4"[167][141]1000:[137]2190 980 [139]Z$[178]"R"[167]AH[178]0:[137]350 990 [137]900 1000 [153]"PROGRAM #"; 1010 [133]S: 1020 [139]S[179]1[176]S[177]X[167]1000 1030 [142] 1040 [143] THIS AREA HAS PRINTER COMMANDS 1050 [153]"";[163]22)"STOP PRINTER CMDCMDCMDCMDCMDCMDCMDCMDCMDSECTION CMDCMDCMDCMDCMDCMDCMDCMDCMDCMD(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)" 1060 [153]"1STOP TO LIST THIS DIRECTORY" 1070 [153]"2STOP TO LOAD AND LIST A PROGRAM" 1080 [153]"3STOP TO LOAD AND LIST ANOTHER DIRECTORY" 1090 [153]"DSTOP RETURN TO DISK FIXER SECTION" 1100 [153]"RSTOP RETURN TO LOAD SECTION" 1110 Z$[178]"":[161]Z$:[139]Z$[178]""[167]1110 1120 [139]Z$[178]"N"[167]N[178]N[170]10:[137]370 1130 [139]Z$[178]"P"[167]N[178]N[171]10:[137]370 1140 [139]Z$[178]"X"[167][141]1550:[141]730:AH[178]0:[128] 1150 [139]Z$[178]"1"[167][141]1210:[137]370 1160 [139]Z$[178]"2"[167][141]1000:[137]1290 1170 [139]Z$[178]"3"[167]:[137]1380 1180 [139]Z$[178]"D"[167]AH[178]1:[137]370 1190 [139]Z$[178]"R"[167]AH[178]0:[137]350 1200 [137]1110 1210 [143] LIST DIRECTORY 1220 [160]4:[159]4,4,2:[157]4 1230 [129]I[178]0[164]X 1240 [152]4,P$(I) 1250 [130] 1260 [152]4:[160]4 1270 [153]"LOAD DONE":[129]I[178]1[164]1000:[130] 1280 [142] 1290 [143] LOAD AND LIST A PROGRAM 1300 [153]"LOAD LOAD "[170][199](34)[170]P$(S)[170][199](34)[170]",8" 1310 [153]" ";P$(S);"STOP" 1320 [153]" CLOSE4:OPEN4,4,2:CMD4:LIST" 1330 [153]" PRINT#4:CLOSE4" 1340 [153]" LOAD"[170][199](34)[170]"COMMANDER-3"[170][199](34)[170]",8ONONONONONONONONONONONON" 1350 [151]631,13:[151]632,13:[151]633,13:[151]634,13:[151]635,82:[151]636,85 1360 [151]637,78:[151]638,13:[151]198,8 1370 [128] 1380 [143] * LOAD AND LIST DIRECTORY 1390 [143] * FROM ANOTHER DISK 1400 [153]"LOAD PLACE DISK TO BE LISTED IN DRIVE..." 1410 [153]" THEN PRESS RETURNWAIT" 1420 R$[178]"":[161]R$:[139]R$[178]""[167]1420 1430 [139]R$[178][199](13)[167]1450 1440 [137]1420 1450 [153]"LOAD" 1460 [153]" LOAD"[170][199](34)[170]"$"[170][199](34)[170]",8" 1470 [153]" OPEN4,4,2:CMD4:LIST" 1480 [153]" PRINT#4:CLOSE4" 1490 [153]" LOAD"[170][199](34)[170]"COMMANDER-3"[170][199](34)[170]",8" 1500 [153]" INSERT COMMANDER DISK BACK IN DRIVE.." 1510 [153]" PRESS RETURNWAIT TO RELOAD COMMANDER":[153]" AFTER PRINTOUT IS DONE." 1520 [153]"ONONONONONONONONONONONONONONONONONON" 1530 [151]631,13:[151]632,13:[151]633,13:[151]198,4 1540 [128] 1550 [143] CLEAR SCREEN - LEAVE TITLE 1560 [153]"":[129]WIPE[178]1[164]21:[153]" ":[130] 1570 [142] 1580 [141]2400: [143] FORMAT NEW DISK 1590 [153]"NAME OF DISK - (16 CHARACTER LIMIT)STOP":[133]NA$:[139]NA$[178]"^"[167]350 1600 [153]"DISK ID # - (CAN BE ANY 2 CHARACTERS)STOP":[133]ID$:[139]ID$[178]"^"[167]350 1610 [153]"IS THE ABOVE INFORMATION CORRECT? (Y/N)" 1620 [161]AN$:[139]AN$[178]""[167]1620 1630 [139]AN$[178]"^"[167]350 1640 [139]AN$[178]"Y"[167]1670 1650 [139]AN$[178]"N"[167]1580 1660 [137]1620 1670 [153]"NEW DISK TO BE LABELED -" 1680 [153]"";[199](34)[170]NA$[170]" ,"[170]ID$[170][199](34) 1690 [153]"PLACE A NEW DISK IN DRIVE" 1700 [153]"THEN PRESS 'RETURN'WAITSTOP" 1710 [161]R$:[139]R$[178]""[167]1710 1720 [139]R$[178]"^"[167]350 1730 [139]R$[178][199](13)[167]1750 1740 [137]1700 1750 [153]"LOADFORMATING NEW DISK NOW" 1760 [159]15,8,15:[152]15,"N0:";NA$;","ID$ 1770 [160]15 1780 [129]I[178]1[164]1500:[130] 1790 [153]"DONE- RETURNING TO MAIN PROGRAM":[129]I[178]1[164]1500:[130]:[137]350 1800 [141]2400:[143] VALIDATE SECTION 1810 [153]"THE VALIDATE COMMAND REORGANIZES THE" 1820 [153]"DISK, CLOSING ANY SMALL GAPS, AND" 1830 [153]"MAKES THEM AVAILABLE TO THE DRIVE." 1840 [153]" ** CAUTION ** WAIT ANY OPEN FILES" 1850 [153]" MAY BE ELIMINATED." 1860 [153]"PLACE DISK TO BE VALIDATED IN DRIVE" 1870 [153]"THEN PRESS 'RETURN'WAITSTOP" 1880 [161]R$:[139]R$[178]""[167]1880 1890 [139]R$[178]"^"[167]350 1900 [139]R$[178][199](13)[167]1920 1910 [137]1880 1920 [153]"LOADVALIDATING DISK NOW" 1930 [159]15,8,15:[152]15,"VALIDATE":[160]15 1940 [129]I[178]1[164]1500:[130] 1950 [153]"DONE- RETURNING TO MAIN PROGRAM":[129]I[178]1[164]1500:[130]:[137]350 1960 [141]2400: [143] RENAME FILE ON DISK 1970 [153]"THIS COMMAND REPLACES CURRENT FILE NAME" 1980 [153]"WITH A NEW NAME." 1990 [153]"THE CURRENT FILE IS NAMED - ":[153][199](34)[170]P$(S)[170][199](34) 2000 [153]"CHANGE NAME TO- (16 CHARACTER LIMIT)STOP":[133]NN$:[139]NN$[178]"^"[167]350 2010 [153]"IS THE ABOVE INFORMATION CORRECT? (Y/N)" 2020 [161]AN$:[139]AN$[178]""[167]2020 2030 [139]AN$[178]"^"[167]350 2040 [139]AN$[178]"Y"[167]2070 2050 [139]AN$[178]"N"[167]1960 2060 [137]2020 2070 [153]"NEW FILE TO BE NAMED-" 2080 [153]"";[199](34)[170]NN$[170][199](34) 2090 [153]"PRESS 'RETURN'WAITSTOP TO RENAME FILE" 2100 [161]R$:[139]R$[178]""[167]2100 2110 [139]R$[178]"^"[167]350 2120 [139]R$[178][199](13)[167]2140 2130 [137]2100 2140 [153]"LOADRENAMING FILE NOW" 2150 [159]15,8,15:[152]15,"R0:";NN$;"=";P$(S) 2160 [160]15:P$(S)[178]NN$ 2170 [129]I[178]1[164]1500:[130] 2180 [153]"DONE- RETURNING TO MAIN PROGRAM":[129]I[178]1[164]1500:[130]:[137]350 2190 [141]2400: [143] SCRATCH FILE ON DISK 2200 [153]"THIS COMMAND SCRATCHES A CURRENT FILE." 2210 [153]"*NOTE* THE FILE IS ELIMINATED!!WAIT" 2220 [153]"THE FILE TO BE SCRATCHED IS- ":[153][199](34)[170]P$(S)[170][199](34) 2230 [153]"DO YOU WANT IT ERASED!(Y/N)" 2240 [161]AN$:[139]AN$[178]""[167]2240 2250 [139]AN$[178]"^"[167]350 2260 [139]AN$[178]"Y"[167]2290 2270 [139]AN$[178]"N"[167]350 2280 [137]2240 2290 [153]"PRESS 'RETURN'WAITSTOP TO ERASE FILE" 2300 [161]R$:[139]R$[178]""[167]2300 2310 [139]R$[178]"^"[167]350 2320 [139]R$[178][199](13)[167]2340 2330 [137]2100 2340 [153]"LOADERASING FILE NOW" 2350 [159]15,8,15:[152]15,"S0:";P$(S) 2360 [160]15:[129]I[178]1[164]1500:[130] 2370 P$(S)[178]"STOPSCRATCHED " 2380 [160]15:[129]I[178]1[164]1500:[130] 2390 [153]"DONE- RETURNING TO MAIN PROGRAM":[129]I[178]1[164]1500:[130]:[137]350 2400 [153]"LOAD":[153][163]12)"DOS COMMANDERWAIT" 2410 [153]"PRINT# PRESS '^' TO EXIT AT ANY PROMPTSTOP" 2420 [142]